<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<meta name="GENERATOR" content="PasDoc 0.9.0">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>ssl_cryptlib</title>
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#FF0000">
<h1 class="unit">Unit ssl_cryptlib</h1>
<table class="sections">
<tr>
<td><a class="section"  href="#@Description">Description</a></td><td><a class="section"  href="#@Uses">uses</a></td><td><a class="section"  href="#@Classes">Classes, Interfaces, Objects and Records</a></td><td>Functions and Procedures</td><td>Types</td><td>Constants</td><td>Variables</td></tr></table>
<a name="@Description"></a><h2 class="description">Description</h2>
<p>
SSL/SSH plugin for CryptLib</p>
<p>


<p>This plugin requires cl32.dll at least version 3.2.0! It can be used on Win32 and Linux. This library is staticly linked - when you compile your application with this plugin, you MUST distribute it with Cryptib library, otherwise you cannot run your application!

<p>It can work with keys and certificates stored as PKCS#15 only! It must be stored as disk file only, you cannot load them from memory! Each file can hold multiple keys and certificates. You must identify it by 'label' stored in <a class="normal" href="ssl_cryptlib.TSSLCryptLib.html">TSSLCryptLib</a>.<a class="normal" href="ssl_cryptlib.TSSLCryptLib.html#PrivateKeyLabel">PrivateKeyLabel</a>.

<p>If you need to use secure connection and authorize self by certificate (each SSL/TLS server or client with client authorization), then use <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#PrivateKeyFile">PrivateKeyFile</a>, <a class="normal" href="ssl_cryptlib.TSSLCryptLib.html">TSSLCryptLib</a>.<a class="normal" href="ssl_cryptlib.TSSLCryptLib.html#PrivateKeyLabel">PrivateKeyLabel</a> and <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#KeyPassword">KeyPassword</a> properties.

<p>If you need to use server what verifying client certificates, then use <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#CertCAFile">CertCAFile</a> as PKCS#15 file with public keyas of allowed clients. Clients with non-matching certificates will be rejected by cryptLib.

<p>This plugin is capable to create Ad-Hoc certificates. When you start SSL/TLS server without explicitly assigned key and certificate, then this plugin create Ad-Hoc key and certificate for each incomming connection by self. It slowdown accepting of new connections!

<p>You can use this plugin for SSHv2 connections too! You must explicitly set <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#SSLType">SSLType</a> to value LT_SSHv2 and set <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#Username">Username</a> and <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.<a class="normal" href="blcksock.TCustomSSL.html#Password">Password</a>. You can use special SSH channels too, see <a class="normal" href="blcksock.TCustomSSL.html">TCustomSSL</a>.</p>
<a name="@Uses"></a><h2 class="uses">uses</h2>
<ul class="useslist"><li>Windows</li><li>SysUtils</li><li><a   href="blcksock.html">blcksock</a></li><li>synsock</li><li><a   href="synautil.html">synautil</a></li><li><a   href="synacode.html">synacode</a></li><li>cryptlib</li></ul><h2 class="overview">Overview</h2>
<a name="@Classes"></a><h3 class="cio">Classes, Interfaces, Objects and Records</h3>
<table class="classestable">
<tr class="listheader">
<th class="itemname">Name</th>
<th class="itemdesc">Description</th>
</tr>
<tr class="list">
<td class="itemname">Class&nbsp;<a class="bold"  href="ssl_cryptlib.TSSLCryptLib.html"><code>TSSLCryptLib</code></a></td>
<td class="itemdesc">class implementing CryptLib SSL/SSH plugin.</td>
</tr>
</table>
<hr noshade size="1"><span class="appinfo"><em>Generated by <a  target="_parent" href="http://pasdoc.sourceforge.net/">PasDoc 0.9.0</a> on 2012-04-23 21:38:51</em>
</span>
</body></html>
